Адміністрація вирішила продати даний сайт. За детальною інформацією звертайтесь за адресою: rozrahu@gmail.com

Ознайомлення із мовою Transact-SQL

Інформація про навчальний заклад

ВУЗ:
Національний університет Львівська політехніка
Інститут:
Не вказано
Факультет:
Не вказано
Кафедра:
Не вказано

Інформація про роботу

Рік:
2009
Тип роботи:
Звіт
Предмет:
Інформаційні технології
Група:
ПІ

Частина тексту файла

Міністерство освіти та науки України Національний університет «Львівська політехніка» Інститут комп’ютерних наук та інформаційних технологій Кафедра ПЗ ЗВІТ до лабораторної роботи №2 з дисципліни «Бази даних (частина ІІ)» на тему: «Ознайомлення із мовою Transact-SQL» Мета: Навчитися використовувати T-SQL, DML та транзакції для зміни даних та управління запитами в SQL Server 2008. Завдання 1.Створити базу даних з наступною архітектурою таблиць: - Product (maker, model, type) - PC (code, model, speed, ram, hd, cd, price) - Laptop (code, model, speed, ram, hd, screen, price) - Printer (code, model, color, type, price) 2.Всі новостворені об’єкти бази даних помістити у наперед створену схему бази даних. 3.Внести відповідні дані у таблиці. 4.Використовуючи DML, видалити всі блокноти, що випускаються виробниками, які не випускають принтери. 5.Продемонструвати використання інструкцій для роботи із транзакціями та обробки помилок, використовуючи вірний та хибний запит. 6.Вивести відповідні повідомлення про статус виконання запиту. Хід роботи 1.Створення бази даних і чотирьох таблиць: Product, PC, Laptop, Printer. Відповідні SQL скрипти: USE [pzDB] GO CREATE TABLE [ComputerFirm].[Product]( [maker] [varchar](10) PRIMARY KEY, [model] [varchar](50) NOT NULL, [type] [varchar](50) NOT NULL ) GO USE [pzDB] GO CREATE TABLE [ComputerFirm].[PC]( [code] [int] PRIMARY KEY, [model] [varchar](50) NOT NULL, [speed] [smallint] NOT NULL, [ram] [smallint] NOT NULL, [hd] [real] NOT NULL, [cd] [varchar](10) NOT NULL, [price] [money] NULL ) GO USE [pzDB] GO CREATE TABLE [ComputerFirm].[Laptop]( [code] [int] PRIMARY KEY, [model] [varchar](50) NOT NULL, [speed] [smallint] NOT NULL, [ram] [smallint] NOT NULL, [hd] [real] NOT NULL, [price] [money] NULL, [screen] [tinyint] NOT NULL ) GO USE [pzDB] GO CREATE TABLE [ComputerFirm].[Printer]( [code] [int] PRIMARY KEY, [model] [varchar](50) NOT NULL, [color] [char](1) NOT NULL, [type] [varchar](10) NOT NULL, [price] [money] NULL ) GO Вигляд таблиць та встановлених зв’язків на діаграмі:  2. Створення схеми бази даних: USE [pzDB] GO CREATE SCHEMA [ComputerFirm] AUTHORIZATION [pzUser] GO Задання створеної схеми схемою за замовчуванням для даного користувача. Після цього всі новостворені таблиці поміщатимуться в цю схему: USE [pzDB] GO ALTER USER [pzUser] WITH DEFAULT_SCHEMA=[ComputerFirm] GO 3. Внесення відповідних даних у таблиці: INSERT INTO [pzDB].[ComputerFirm].[Product] VALUES('Samsung','1428','PC') ,('Samsung','1429','PC') ,('Samsung','1621','Laptop') ,('HP','3734','Laptop') ,('HP','3992','Printer') ,('SomeFirm','7144','PC') ,('SomeFirm','7321','Laptop') ,('SomeFirm','7979','Printer') GO INSERT INTO [pzDB].[ComputerFirm].[PC] VALUES(40,'1428',1200,512,160,'52x',250) ,(41,'1428',1200,1024,500,'52x',350) ,(84,'7144',1500,2048,320,'52x',500) GO INSERT INTO [pzDB].[ComputerFirm].[Laptop] VALUES(44,'1621',1200,512,160,400,15) ,(72,'3734',800,256,80,250,14) ,(87,'7321',1500,1024,240,NULL,15) GO INSERT INTO [pzDB].[ComputerFirm].[Printer] VALUES(75,'3992','y','Laser',200) ,(88,'7979','n','Jet',140) ,(89,'7979','n','Matrix',120) GO 4. Інформація про продукти комп’ютерної фірми (таблиця Product):  Блокноти, які пропонує комп’ютерна фірма (таблиця Laptop):  Запит, який видаляє всі блокноти, що випускаються виробниками, які не випускають принтери: DELETE FROM ComputerFirm.Laptop WHERE model = (SELECT model FROM ComputerFirm.Product WHERE maker NOT IN (SELECT maker FROM ComputerFirm.Product WHERE type = 'Printer') AND type = 'Laptop') Блокноти, які залишились після виконання запиту (таблиця Laptop):  5. Вірний запит: транзакція видаляє з таблиці Product рядок, ключ якого вже не використовується іншими таблицями: USE pzDB GO BEGIN TRANSACTION BEGIN TRY DELETE FROM ComputerFirm.Product WHERE model = '1621'; COMMIT TRANSACTION; END TRY BEGIN CATCH SELECT ERROR_NUMBER() AS E...
Антиботан аватар за замовчуванням

01.01.1970 03:01

Коментарі

Ви не можете залишити коментар. Для цього, будь ласка, увійдіть або зареєструйтесь.

Завантаження файлу

Якщо Ви маєте на своєму комп'ютері файли, пов'язані з навчанням( розрахункові, лабораторні, практичні, контрольні роботи та інше...), і Вам не шкода ними поділитись - то скористайтесь формою для завантаження файлу, попередньо заархівувавши все в архів .rar або .zip розміром до 100мб, і до нього невдовзі отримають доступ студенти всієї України! Ви отримаєте грошову винагороду в кінці місяця, якщо станете одним з трьох переможців!
Стань активним учасником руху antibotan!
Поділись актуальною інформацією,
і отримай привілеї у користуванні архівом! Детальніше

Оголошення від адміністратора

Антиботан аватар за замовчуванням

пропонує роботу

Admin

26.02.2019 12:38

Привіт усім учасникам нашого порталу! Хороші новини - з‘явилась можливість кожному заробити на своїх знаннях та вміннях. Тепер Ви можете продавати свої роботи на сайті заробляючи кошти, рейтинг і довіру користувачів. Потрібно завантажити роботу, вказати ціну і додати один інформативний скріншот з деякими частинами виконаних завдань. Навіть одна якісна і всім необхідна робота може продатися сотні разів. «Головою заробляти» продуктивніше ніж руками! :-)

Новини